#! /bin/bash

## Variable du menu
A=" Installation depuis un répertoire WINE local déjà présent."
B=" Installation depuis un fichier exécutable local."
C=" Installation depuis un paquet msi local."
D=" Création d'une entrée de menu."
E=" Dé-installer un préfixe"
F=" Quitter." 

## Si vous connaissez déjà vos différent répertoires nécessaire
## à l"installation entrez leur variable directement ci-dessous.
winedir="/home/$USER/.wine/drive_c/Prog*"
#winedefault="`ls -d ~/.wine/drive_c/Prog*`"
execdir="/home/mike/Téléchargement/exe/"
# résolution de l'emplacement des fichiers desktop par défaut.
wineprog="wine/Programmes" # changez selon la langage.
winenewdir="/home/$USER/.local/share/applications"
winedskdir="$winenewdir/$wineprog/"
winedskdef=`echo $winedskdir`
## Variable des couleurs assignées.
t='\e[0;39m'	#couleur normal du terminal
r='\e[1;31m'	#rouge
b='\e[1;34m'	#bleu
v='\e[1;32m'	#vert
y='\e[1;36m'	#cyan 
j='\e[1;33m'	#jaune

## INSTALLATION DEPUIS UN RÉPERTOIRE EXISTANT
function installfromrep(){
	function rmorigdir(){
		echo -e "$v Je peux maintenant retirer ce programme du répertoire par défaut"
		echo -e " Voulez-vous continuez? $j(o/n)$v: $j\c"
			read -n 1 answer0 ; echo -e "\r"
			if [ $answer0 == "o" ] ; then
				echo -e "\n\t$r>>>$j  Retrait du répertoire de programme. $r<<<$v\n"
				rm -R $winedir/$prefix ; sleep 2 #; menu
			else
				echo -e "$v Bien, passons à la suite. " ; sleep 1
				#menu
				#continue
			fi
	}
winedef=`echo $winedir`
if [ -d "$winedef" ] ; then
	echo -e "$y\n\t"
	cd $winedir
	#ls -d $winedir/*/ | awk '{print $2}' | sed 's/*Files\// ---> /' | cat -n
	ls -d $winedir/*/ | sed "s|$winedef\/|  --->   |" #| cat -n
	echo -e "$v Choisisssez le repertoire à migrer dans la liste.\n Aidez-vous de l'auto-complétion: \r"
	echo -e "$v   Entrez le nom du répertoire: $j\c"
		read -e prefix 
		if [ -e /home/$USER/.wine.$prefix ] ; then
			echo -e "$r\t ATTENTION$v CE PRÉFIXE EXISTE DÉJÀ \n    VOULEZ-VOUS L'ÉCRASER? OU L'AJOUTER À CE PRÉFIXE."
				A1="Écraser."
				A2="Ajouter."
				A3="Ne rien faire."
				PS3="`echo -e "\n$v Votre choix$j ==>"` "
				echo -e "$j"
				select  choice1 in "$A1" "$A2" "$A3"; do
					case $choice1 in
						"$A1")
							wineprefixcreate --prefix ~/.wine.$prefix
							#ln -s -T ~/.wine.$prefix/drive_c/Program\ Files ~/.wine.$prefix/drive_c/ProgFiles
							cp -R ./$prefix ~/.wine.$prefix/drive_c/Program\ Files/
							#rm -v -f ~/.wine.$prefix/drive_c/ProgFiles
							rmorigdir ; dskintro ; echo -e "$r >> $v Retour au menu principal."
							sleep 1 ; postinstall ; menu
						;;
						"$A2")
							cp -R ./$prefix ~/.wine.$prefix/drive_c/Program\ Files/
							echo -e "\n\t$r>>>$j  Copie des fichiers vers $prefix. $r<<<$v\n" ; sleep 2
							rmorigdir ; dskintro ; echo -e "$r >> $v Retour au menu principal."
							sleep 1 ; postinstall ; menu
						;;
						"$A3")
							echo -e "$r >> $v Retour au menu principal." ; sleep 1 ;menu
						;;
					esac
				done
		fi	
else
	echo "$v  $winedefault n'existe pas.\n Vous n'avez pas de préfixe WINE par défaut, Je ne peux hélas pas faire de miracle!!\r"
	menu
fi
}

## INSTALLATION PAR FICHIER EXE. 
function installfromexe(){
	echo -e "$v Je vais maintenant installer$j $soft""$v dans le préfixe$j $prefix"
	sleep 1
	echo -e "\n\t$r-->$j    INSTALLATION DE VOTRE LOGICIEL   $r<--$y\n"
	if [ -d /home/$USER/$rep ]&&[ -s /home/$USER/$rep$soft ] ; then
		echo "installation de $rep$soft depuis le répertoire $rep \n"
		env WINEPREFIX=/home/$USER/.wine.$prefix wine $opt3 /home/$USER/$rep$soft
	fi
	if [ $E2 ]&&[ -d $execdir ]&&[ -s $execdir$soft ] ; then
		echo -e "installation de $execdir$soft depuis le répertoire par défaut \n"
		env WINEPREFIX=/home/$USER/.wine.$prefix wine $opt3 $execdir/$soft
	fi
	echo -e "$v Si tous c'est bien passé,$j $soft""$v est désormais installé dans le préfixe$j $prefix$v.\n"
	sleep 1
	## Configuration de wine dans son préfixe.
	echo -e "$v Passons maintenant à la suite des opérations."
	sleep 1
	wineconfig
}

# sous fonction CHOIX DU RÉPERTOIRE DES EXÉCUTABLES.
function choosedir(){
	echo -e "$v Choisisssez le répertoire des exécutables Windows: \r"
	echo -e "$v Répertoire par défaut ($execdir) ou autre ? $j"
		D1="Défaut"
		D2="Autre"
		PS3="`echo -e "\n$v Votre choix$j ==>"` "
		select  choice3 in "$D1" "$D2" ; do
			case $choice3 in
				"$D1")
					echo -e "\n$v Je recherche à partir du répertoire par défaut :"
					exerep="$execdir"
					cd $execdir ; makechoice
				;;
				"$D2")
					echo -e "\n$v Je recherche à partir du répertoire de $USER $y:"
					cd /home/$USER
					ls -d /home/$USER/* | sed 's|'/home/$USER/'|  -->  |'
					echo -e "$v Pressez [TAB] pour compléter le chemin : $j\c"
					read -e rep
					exerep="/home/$USER/$rep"
					cd $rep ; makechoice
				;;
			esac
		done
}
# sous fonction LISTING RÉPERTOIRE DES EXECUTABLES. 
function makechoice(){
	echo -e "\n$v Voici la liste de logiciel contenu dans ce répertoire: $y\r"
	sleep  2
		replist=`ls "$exerep"*.$suffixe | sed 's|'${exerep#*}'|--->  |' | cat -n`
		echo -e "$y$replist" 
		echo -e "\r$v Choisissez un numéro :\n ==>  $j\c"
		read exelist
		resultB=`echo "$replist" | sed -n ''$exelist'p' | awk '{ print $3" "$4" "$5" "$6 }' `
		echo -e "$v Votre choix:$j $resultB"
		soft="`echo ${resultB#*->  }`" #; echo "$soft"
		if [[ -s $execdir/$soft ]] ; then
			echo
		else
			echo -e "\n$r wine.$soft n'existe pas."
			echo -e "\n$v Je retourne au menu principal."
			sleep 1 ; menu
		fi
	chooseprefix
}
#sous fonction INSTALLATION D'UN PRÉFIXE. 
function chooseprefix(){
	echo -e "$v Que voulez-vous faire avec $j$soft$v : \r"
	echo -e "$v Installer dans un préfixe existant ou en créer un nouveau ?$j"
		E1="Nouveau"
		E2="Éxistant"
		PS3="`echo -e "\n$v Votre choix$j ==>"` "
		select  choice3 in "$E1" "$E2" ; do
			case $choice3 in
				"$E1")
					sleep 1
					echo -e "$v Entrez le nom du nouveau préfixe en choisissant tant que possible\r"
					echo -e " un nom évocateur, se rapprochant de$j $soft$v .\t"
					echo -e " Nouveau préfixe: $j\c"
					read prefix
					installfromexe
				;;
				"$E2")
					echo -e "\n$v Voici la liste des préfixes déjà existant: $y\r"
					sleep 1
					tmpdir="/home/$USER/"
					opt2=".wine.*"
					list
					prefix="${result#*-->  .wine.}"
					installfromexe
				;;
			esac
		done
}
#sous fonction CONFIGURATION POST INSTALL DU PRÉFIXE. 
function postinstall(){
echo -e "\f"; echo -e "$v Nous pouvons créer maintenant un fichier de menu indépendant du menu Wine,\n Il s'inclura dans le menu général des applications. \r"
echo -e " Le désirez-vous $j(o/n)$v: $j\c"
	read -n 1 answer2
case $answer2 in
	o|O|y|Y)
		cd ../../
		echo -e "\n$v Choississez \"$j$B1$v\" pour commencer la procédure."
		dskmenu
		;;
	n|N)
		echo -e "\n\t$r C'est mieux avec que sans!" ; sleep 1
		echo -e "\n$v Je pourrais le faire plutard par l'entrée \"$j$D$v\" du menu principal."
		sleep 2
		echo -e "\n$v Votre application est désormais disponible à partir le menu Wine. "
		sleep 1
		menu
		;;
esac
}


#sous fonction RETRAIT D'ENTRÉE DU MENU WINE
function wineentryrm(){
if [ -e $winenewdir/$winedsk ] ; then
	echo -e "$v Je peux maintenant retirer l'entrée de$j $softname""$v du menu Wine,"
	echo -e "\n rappelez-vous qu'il ne nous est plus nécessaire. \n Le désirez-vous?$j (o/n)""$v:$j\c"
	read -n 1 answer3
	echo -e "$v\r"
	case $answer3 in
		o|O|y|Y)
			rm -v -f -R $winedskdir/$opt3/
			echo -e "$v L'entrée a été retirée."
			;;
		n|N)
			echo -e "$r L'application$j $softname""$v est désormais disponible dans les menu$j $appcat""$r et$j Wine$r.$t\t"
			;;
	esac
fi
sleep 1
}

## LIEN DIRECT WINECFG POUR L'APPLI INSTALLÉE.
function wineconfig(){
	sleep 1
	echo -e "\r$v Nous pouvons maintenant configurer wine pour le préfixe$j $prefix $v.\t"
	echo -e " Voulez-vous continuez? $j(o/n)$v: $j\c"
		read -n 1 answer1
	echo -e "$y\r"
	case $answer1 in
		o|O|y|Y) 
			env WINEPREFIX=/home$USER/.wine.$prefix winecfg
			postinstall
		;;
		n|N)
			echo -e "\n$r N'OUBLIER PAS DE FAIRE PLUS TARD SI DES CHOSES ÉTRANGES ARRIVENT!! \n"
			echo -e "\n$v Je pourrais le faire à partir l'entrée \"$j$D$v\" du menu principal. "
			sleep 2
			postinstall
		;;
	esac
}

### QUELQUES VARIABLES ###

## PRÉSENCE DU RÉPERTOIRE WINE PAR DÉFAUT.
function winedefault(){
	echo $winedir | sed 's/Program/Program\\/' 
}
## LISTIN DES PREFIX WINE EXISTANT ET DÉFINITION.
function list(){
	listdir="$tmpdir"
		wlist=`ls -d $listdir$opt2 | sed 's|'${listdir%$opt3$opt1}'|--->  |' | cat -n`
		#wlist=`ls -d $listdir$opt2 | sed 's|'$lisdir%$opt1'|--->  |' | cat -n`
		echo "$wlist"
		echo -e "\r$v Votre choix :\n ==>  $j\c"
		read list
		result=`echo "$wlist" | sed -n ''$list'p'`
		#echo ${result#*--> }
}
## INTRO DU MENU DE CRÉATION D'ENTRÉE DESKTOP.
function dskintro(){
	echo -e "$v Vous pouvez créer maintenant une entrée menu pour$j ${prefix%/} \n$v Le désirez-vous?$j (o/n)""$v:$j\c"	
		read -n 1 answer3 ; echo -e "$v\r"
		if [ $answer3 == "o" ] ; then
			dskmenu
		else
			echo -e "$v C'est mieux avec que sans!\n Vous pourrez le faire plutard par l'entrée$j $D$v du menu principal."
			sleep 2
		fi
}

## MENU DE CRÉATION D'ENTRÉE DESKTOP.
function dskmenu(){
	B1="Créer une entrée de menu."
	B2="Créer une entrée de menu Wincfg."
	B3="Modifier une icône d'une entrée de menu."
	B4="Retour au menu principal."
	PS3="`echo -e "\n$v Votre choix$j ==>"` "
	echo -e "\n$v  Menu de création d'Entrée:\r" ; echo -e "$j"
	select  choice2 in "$B1" "$B2" "$B3" "$B4" ; do
			case $choice2 in
				"$B1")
					dskentry
					echo -e "$v Il est installé dans le répertoire$j /.local/share/application/$v \n du répertoire utilisateur$j $USER"
						if [ -s /home/$USER/.wine.$prefix/icons/$softname.png ] ; then
							echo
						else
							add_icon
						fi
					echo -e "\n$v Je vous conseille de créer maintenant une entrée WineCfg pour votre application"
					echo -e "\r$v Mais rien ne vous empêches de le faire plus tard."
					echo -e "$v $j $v Le désirez-vous?$j (o/n)""$v:$j\c"	
						read -n 1 answer5 ; echo -e "$v\r"
						if [ $answer5 == "o" ] ; then
							deskconfentry ; wineentryrm
						else
							sleep 1 ; wineentryrm ; dskmenu
						fi
				;;
				"$B2")
					dskconfentry
					echo -e "$v Il se trouve dans le répertoire$j /.local/share/application/$v \n du répertoire utilisateur$j $USER"
						if [ -s /home/$USER/.wi13ne.$prefix/icons/$softname.png ] ; then
							echo
						else
							add_icon
						fi
					dskmenu
				;;
				"$B3")
					echo -e "\n$v Création d'une icone personnalisée."
					add_icon
					dskmenu
				;;
				"$B4")
					menu
				;;
			esac
	done
}


### RÈGLES GÉNÉRALES POUR CRÉATION D'ENTRÉE ###

## CRÉATION AUTO DU FICHIER .DESKTOP
function dskautoentry(){
			#cd ../../
			cp -f -v "$winedskdir$opt3$winedsk" $winenewdir/wine.$softname.desktop
			echo -e "Comment=$comment" >> $winenewdir/wine.$softname.desktop
			echo -e "Categories=$appcat;" >> $winenewdir/wine.$softname.desktop
}
## CRÉATION DU FICHIER .DESKTOP APPLICATION
function dskentry(){
	prefixrules ; prefixpresence ; dskvar
	if [[ -e $winedskdir/$opt3$winedsk ]] ; then
	echo -e "\n$v Tranfert et modification de$j $winedsk$v."
		dskautoentry
	else
		if [ -e ~/.local/share/applications/wine.$softname.desktop ] ; then
			rm -f ~/.local/share/applications/wine.$softname.desktop
		fi
		dskcomp
		cd ~/.local/share/applications ; touch wine.$softname.desktop
		echo -e "[Desktop Entry]" >> wine.$softname.desktop
		echo -e "Version=1.0" >> wine.$softname.desktop
		echo -e "Name=$softname" >> wine.$softname.desktop
		echo -e "Comment=$comment" >> wine.$softname.desktop
		echo -e "Terminal=false" >> wine.$softname.desktop
		echo -e "Type=Application" >> wine.$softname.desktop
		echo -e "Exec=env WINEPREFIX=/home/$USER/.wine.$prefix/ wine /home/$USER/.wine.$prefix/drive_c/Program\\ Files/$exename" >> wine.$softname.desktop				
		#	echo -e "Exec=env WINEPREFIX=/home/$USER/.wine.$prefix/ wine \"C:\\Program Files\\\\${exename%/*}\\\\${exename#*/}"\" >> wine.$softname.desktop
		echo -e "Path=/home/$USER/.wine.$prefix/dosdevices/c:/Program Files/${exename%/*}" >> wine.$softname.desktop
		echo -e "Categories=$appcat;" >> wine.$softname.desktop
		echo -e "Icon=/home/$USER/.wine.$prefix/icons/$softname.png" >> wine.$softname.desktop
		iconextract
	fi
	wineentryrm
	echo -e "\n$j $softname""$v est désormais disponible dans le menu$j $appcat $v\n"
	if [ -e ~/.local/share/applications/wine.$softname.desktop ] ; then
		echo #dskmenu
	fi
}
## CRÉATION DU FICHIER  .DESKTOP WINECFG
function dskconfentry(){
	echo -e "\r$v Commençons par les informations générales:\n"
	prefixrules ; prefixpresence ; dskvar
	for wineconf in dskconfentry ; do
		if [ -e ~/.local/share/applications/wine.$softname.conf.desktop ] ; then
			rm -f ~/.local/share/applications/wine.$softname.conf.desktop
		fi
		cd ~/.local/share/applications ; touch wine.$softname.conf.desktop
			echo -e "[Desktop Entry]" >> wine.$softname.conf.desktop
			echo -e "Version=1.0" >> wine.$softname.conf.desktop
			echo -e "Name=$softname-wineconf" >> wine.$softname.conf.desktop
			echo -e "Comment=Configuration de Wine pour $softname" >> wine.$softname.conf.desktop
			echo -e "Terminal=false" >> wine.$softname.conf.desktop
			echo -e "Type=Application" >> wine.$softname.conf.desktop
			echo -e "Exec=env WINEPREFIX=/home/$USER/.wine.$prefix/ winecfg" >> wine.$softname.conf.desktop
		#	echo -e "Path=/home/$USER/.wine.$prefix/dosdevices/c:/Program Files/${exename%/*}" >> wine.$softname.conf.desktop
			echo -e "Categories=$appcat;" >> wine.$softname.conf.desktop
			echo -e "" >> wine.$softname.conf.desktop
			echo -e "Icon=/home/$USER/.wine.$prefix/icons/$softname.png" >> wine.$softname.conf.desktop
			echo -e "$j $softname-wineconf$v est installé \n Il est placé aux côtés de l'entrée$j $softname$v dans le menu$j $appcat$v\n"
	done
	if [ -e ~/.local/share/applications/wine.$softname.conf.desktop ] ; then
		echo #dskmenu
	fi
}

# sous-fonction PREFIX RULES (analyse de continuité d'une précédente action)
function prefixrules(){
	# recherche de prefix en cours de configuration
	#if [ [ -d /home/$USER/$prefix ] -o [ -d /home/$USER/.wine.$prefix ] ] ; then
	if [[ -d /home/$USER/.wine.$prefix ]] ; then
		echo
	else
		echo -e "$v Choisissez le numéro de votre préfixe wine dans la liste : $y"
		opt1="\*"
		opt2=""
		tmpdir="/home/$USER/.wine.*"	
		list
		prefix="${result#*-->  }"
	fi
}
# sous-fonction PREFIX PRESENCE (analyse de continuité d'une précédente action)
function prefixpresence(){
	echo -e "$v Entrez un nom pour votre application:\n ==> $j\c"
		read softname
			prefixdef=`echo ${prefix%/}`
			if [ "$softname" == "$prefixdef" ]  ; then
				echo -e "$r ATTENTION$v, $y `echo ${prefix%/}`$v est équivalent au nom du préfixe.\n Voulez-vous gardez le préfixe comme nom d'application ou\r "
				echo -e "$v en choisir un autre plus accrocheur ?"
				echo -e "$v $j $v Garder ce nom de préfix?$j (o/n)""$v: $j\c"	
					read -n 1 answer4 #; echo -e "\n"
					if [ $answer4 == "o" ] ; then
						softname="$softname"
					else
						echo -e "$yOK$v, retour au menu des Entrées\n"
						dskmenu
					fi
			fi
}
# sous-fonction DSK VAR (variables principales)
function dskvar(){
	echo -e "\r$v Entrez un commentaire (taper ENTRÉE pour passer):\n ==>  $j\c"
		read comment
	echo -e "\r$v Entrez la catégorie \n (Game/AudioVideo/Graphics/Network/Office):\n ==>  $j\c"			
		read appcat
	cd $winedskdir
	echo -e "\n$v Je recherche les fichiers .desktop générés par répertoire Wine par défaut.$y \r"
		tmpdir="$winedskdir"
		opt1="\//*"
		opt2="*"
		list
		cd ${result#*-->  } #; ls * | cat -n
	echo -e "\n$v Choisissez un fichier ce dossier : $y \r"
		opt1=""
		opt2="/${result#*-->  }/*"
		opt3="/${result#*-->  }/"
		list
		#ls -d * | sed 's|$winedskdir%\/\*| -->  | cat -n'
	#echo -e "$v Pressez [TAB] pour compléter le chemin : $j\c"
	#	read -e winedsk
		winedsk=${result#*-->  $opt2} ; echo "$opt3$winedsk"
}
# sous-fonction DSK COMPLEMENT VAR (variables compémentaires)
function dskcomp(){
	echo -e "\n$v Le fichier .desktop$j $winedsk""$v n'existe pas. Je dois le créer. \r"
	echo -e "$v J'ai besoin d'informations complémentaire: $y\r"
	sleep 2
	prefixdir="~/.wine.$prefix/drive_c/Program\ Files/"
	echodir=`echo ~/.wine.$prefix/drive_c/Program\ Files/`
	cd "$prefixdir"
	ls -d ~/.wine.$prefix/drive_c/Program\ Files/*/ | sed "s|$echodir|  --->   |"
		echo -e "$v Suivez le nom du répertoire contenant l'exécutable dans la liste.\n Pressez [TAB] pour étendre: \n" 
		echo -e "$v ==>$j \c"
		read -e exename
		echo -e "\n$v"
}
## ICON EXTRACTION
function iconextract(){
	# extraction de l'icone
	mkdir -p ../../icons
	if [ -x $exename ] ; then 
		wrestool -x --output=/home/$USER/.wine.$prefix/icons/$softname.ico -t14 $exename
		icotool -x --output=/home/$USER/.wine.$prefix/icons/$softname.png -h32 /home/$USER/.wine.$prefix/icons/$softname.ico
		rm -f /home/$USER/.wine.$prefix/icons/*.ico
	else
		# controle de la présence effective de l'icone créée
		if [ -s /home/$USER/.wine.$prefix/icons/$softname.png ] ; then
			echo
		else
			echo -e "\n$v L'icone créée n'est pas valide, voulez-en choisir  une depuis un répertoire d'image?"
			echo -e "\n$v $j $v Le désirez-vous?$j (o/n)""$v:$j\c"	
				read -n 1 answer6 ; echo -e "$v\r"
			if [ $answer6 == "o" ] ; then
				add_icon
			fi
		fi
	fi
}
# sous fonction création ADD ICON depuis le menu
function icon_conf(){
	# normal ou conf ?
	echo -e "\n$v De quel type d'entrée de menu s'agit-il ? $j"
		D1="Entrée de menu de l'executable"
		D2="Entrée de menu WINECFG"
		PS3="`echo -e "\n$v Votre choix$j ==>"` "
		select  choice1 in "$D1" "$D2" ; do
			case $choice1 in
				"$D1")
					echo -e "\n$v Recherche pour une entrée normal de menu :"
					add_icon
				;;
				"$D2")
					echo -e "\n$v Recheche pour une entrée de menu WINECFG :"
					dsk_opt=".conf" ; add_icon
				;;
			esac
		done
}
# sous fonction de navigation pour ADD ICON
function search_icon(){
	if [ $dsk_file ] ; then
	echo -e "\n$v Dans quel répertoire dois-je commencer la recherche ? $j"
		C1="Racine"
		C2="Utilisateur"
		PS3="`echo -e "\n$v Votre choix$j ==>"` "
		select  choice2 in "$C1" "$C2" ; do
			case $choice2 in
				"$C1")
					echo -e "\n$v Je commence la recherche à partir du répertoire racine :"
					cd / ; replace_icon
				;;
				"$C2")
					echo -e "\n$v Je commence la recherche à partir du répertoire $USER :"
					userdir="/home/$USER"
					cd /home/$USER ; replace_icon
				;;
			esac
		done
	fi
}
# sous fonction de modication du ficheir desktop pour ADD ICON
function replace_icon(){
	echo -e "\n$v Pressez [TAB] pour compléter le chemin :\n ==> $j\c"
	read -e newicon 
	cd /home/$USER/.local/share/applications
	if [ -e ~/.local/share/applications/$dsk_file ] ; then
			sed -i "10cIcon=$userdir/$newicon" $dsk_file
		echo -e "\n$v Travail terminé, retour au menu de Création d'Entrées "
		sleep 1 ; dskmenu
	else
		echo -e "\n$v $dsk_file n'existe pas.\n Retour au menu."
		sleep 2 ; dskmenu
	fi
}
## ADD ICON (recherche d'une icone de remplacement)
function add_icon(){
	cd /home/$USER/.local/share/applications
	#if [ $softname == $sofname ] ; then
	#	dsk_file="$softname"
	#	echo $dskfile ; echo "pas bon"
	#	dsk_opt=""
	#fi
	echo -e "\n$y" ; rm wine..desktop
	if [ -s  /home/$USER/.local/share/applications/wine.$softname.desktop ] ; then
		dskfile="wine.$softname.desktop" ; echo -e "$v L'icone $softname est présente, rien à faire"
	else
		#if [ $softname != $softname ] ; then
		#echo $dsk_file ; echo "bon"
			echo -e "\n$v Veuillez choisir le fichier desktop dans la liste"
			dsklist="/home/$USER/.local/share/applications/"
			dlist=`ls $dsklist\wine.* | sed 's|'${dsklist#*}'|--->  |' | cat -n`
			echo -e "$y$dlist" 
			#ls $dsklist\wine.* | sed 's|'${dsklist#*}'|--->  |' | cat -n | awk '{print $1}'
			echo -e "\r$v Choisissez un numéro :\n ==>  $j\c"
			read filelist ; echo $filelist
			resultA=`echo "$dlist" | sed -n '/'$filelist'/p'` #; echo $resultA | awk '{ print $1 $2 $3 }'
			#resultA=`echo "$dlist" | awk '{print $1}`
			#dsk_file="`echo ${resultA#*-->  wine.} | sed 's|.desktop||'`" ; echo $dsk_file
			dsk_file="`echo $resultA | awk '{ print $3}'`" ; echo -e "\n$y"
			ls /home/$USER/.local/share/applications/$dsk_file
			if [ -s /home/$USER/.local/share/applications/$dsk_file ] ; then
				echo
			else
				echo -e "\n$r wine.$dsk_file$dsk_opt.desktop n'existe pas."
				echo -e "\n$v Je dois d'abord le créer avant d'exécuter cette étape."
				dskmenu
			fi
		#fi
	fi
	search_icon
}


## DÉSINTALLATION DE PRÉFIXE
function uninstall(){
	echo
}

### MENU D'APPEL
function menu(){
echo -e "$v\n Méthode d'installation:$j\n"
PS3="`echo -e "\n$v Faites votre choix$j ==>"` "
select choice in "$A" "$B" "$C" "$D" "$E" "$F" ; do 	
	case $choice in
		"$A")
			echo -e "\n\t$r>>>$j  Installation depuis un répertoire WINE local.  $r<<<$v\n"
			installfromrep
		;;
		"$B")
			echo -e "\t$r>>>$j  Installation depuis un exécutable.$r  <<<$v\n" 
			suffixe="exe"
			choosedir
		;;
		"$C")
			echo -e "\t$r>>>$j  Installation depuis un paquet MSI.$r  <<<$v\n"
			suffixe="msi"
			opt3="msiexec /i"
			choosedir
		;;
		"$D")
			echo -e "\t$r>>>$j  Création d'une entrée de menu$r <<<$v\n"
			dskmenu
		;;
		"$E")
			echo -e "\t$r>>>$j  Dé-installation d'un répertoire WINE$r  <<<$v\n"
			uninstall
		;;
		"$F")
			echo -e "$t\n" ; exit 0
		;;
	esac
done
}
cd ~
echo -e "$j--->$r VOUS ALLEZ INSTALLER UN NOUVEAU LOGICIEL AVEC WINE $j<---\r"
echo -e "$v Suivez les instruction pour créez, effacer, modifier vos préfixes Wine. \r"
control=`echo $execdir` 
if [ -d "$control" ] ; then
	echo #"$control existe"
	menu
else
	echo -e "$y\f\t Je demarre pour la première fois. Indiquez moi le répertoire par defauft où je pourrais trouver\n les applications Windows à installer\f"
	echo -e "$v  Entrez le chemin de votre choix:\n"
	echo -e "$v \n $y==>$j \c"
	read -e chooseexecdir
		if [ $? -eq 0 ] ; then
			#sed -i "15cexecdir=\"$execdir\"" /usr/local/bin_script/wine-create2
			sed -i "15cexecdir=\"$chooseexecdir\"" ~/Documents/Dev/wine-create2
		fi
fi
menu
